/*
 * Created on 10/09/2004
 */
package com.master.bd;

import java.sql.ResultSet;
import java.util.ArrayList;

import com.master.ed.Situacao_TributariaED;
import com.master.ed.Tipo_Credito_DebitoED;
import com.master.util.Excecoes;
import com.master.util.bd.ExecutaSQL;

/**
 * @author Andre Valadas
 */
public class Tipo_Credito_DebitoBD {

    private ExecutaSQL executasql;

    public Tipo_Credito_DebitoBD(ExecutaSQL sql) {
        this.executasql = sql;
    }


    public ArrayList listaCREDITO(Tipo_Credito_DebitoED ed) throws Excecoes {

        String sql = null;
        ArrayList list = new ArrayList();
        try {

            sql = " select oid_Tipo_Credito, " +
            	  "		   cd_Tipo_Credito, " +
            	  " 	   nm_Tipo_Credito " +
            	  " from Tipos_Creditos_EFD " ;
        	sql +=" order by cd_Tipo_Credito";

             ResultSet res = this.executasql.executarConsulta(sql);
             while (res.next())
             {
            	 Tipo_Credito_DebitoED edVolta = new Tipo_Credito_DebitoED();

                edVolta.setOid_Tipo(res.getInt(1));
                edVolta.setCd_Tipo(res.getString(2));
                edVolta.setNm_Tipo(res.getString(3));

                list.add(edVolta);
            }
        } catch (Exception exc) {
            throw new Excecoes(exc.getMessage(), exc, exc.getClass().getName(), "listaCREDITO()");
        }
        return list;
    }

    public ArrayList listaDEBITO(Tipo_Credito_DebitoED ed) throws Excecoes {

        String sql = null;
        ArrayList list = new ArrayList();
        try {

            sql = " select oid_Tipo_Debito, " +
            	  "		   cd_Tipo_Debito, " +
            	  " 	   nm_Tipo_Debito " +
            	  " from Tipos_Debitos_EFD " ;
        	sql +=" order by cd_Tipo_Debito";

             ResultSet res = this.executasql.executarConsulta(sql);
             while (res.next())
             {
            	 Tipo_Credito_DebitoED edVolta = new Tipo_Credito_DebitoED();

                edVolta.setOid_Tipo(res.getInt(1));
                edVolta.setCd_Tipo(res.getString(2));
                edVolta.setNm_Tipo(res.getString(3));

                list.add(edVolta);
            }
        } catch (Exception exc) {
            throw new Excecoes(exc.getMessage(), exc, exc.getClass().getName(), "listaDEBITO()");
        }
        return list;
    }

    public Tipo_Credito_DebitoED getByOidCREDITO(Tipo_Credito_DebitoED ed) throws Excecoes {

        String sql = null;
        Tipo_Credito_DebitoED edVolta = new Tipo_Credito_DebitoED();
        try {

        	sql = " select oid_Tipo_Credito, " +
		      	  "		   cd_Tipo_Credito, " +
		      	  " 	   nm_Tipo_Credito " +
		      	  " from Tipos_Creditos_EFD " ;
        	sql+= " where oid_Tipo_Credito = " + ed.getOid_Tipo();

            ResultSet res = this.executasql.executarConsulta(sql);
            while (res.next())
            {
            	edVolta.setOid_Tipo(res.getInt(1));
                edVolta.setCd_Tipo(res.getString(2));
                edVolta.setNm_Tipo(res.getString(3));
            }
           return edVolta;

        } catch (Exception exc) {
            throw new Excecoes(exc.getMessage(), exc, exc.getClass().getName(), "getByOidDEBITO()");
        }
    }

    public Tipo_Credito_DebitoED getByOidDEBITO(Tipo_Credito_DebitoED ed) throws Excecoes {

        String sql = null;
        Tipo_Credito_DebitoED edVolta = new Tipo_Credito_DebitoED();
        try {

        	sql = " select oid_Tipo_Debito, " +
		      	  "		   cd_Tipo_Debito, " +
		      	  " 	   nm_Tipo_Debito " +
		      	  " from Tipos_Debitos_EFD " ;
        	sql+= " where oid_Tipo_Debito = " + ed.getOid_Tipo();

            ResultSet res = this.executasql.executarConsulta(sql);
            while (res.next())
            {
            	edVolta.setOid_Tipo(res.getInt(1));
                edVolta.setCd_Tipo(res.getString(2));
                edVolta.setNm_Tipo(res.getString(3));
            }
           return edVolta;

        } catch (Exception exc) {
            throw new Excecoes(exc.getMessage(), exc, exc.getClass().getName(), "getByOidDEBITO()");
        }
    }
}